package com.module.ble.utils

/**
 *
 * 作者：sosou
 *
 * 版本：1.0
 *
 * 创建日期：2024/11/8
 *
 * 描述：
 *
 * 修订历史：
 *
 */
object BleConfig {
    const val MINUTES_IN_DAY = 1440 //一天内的分钟数
    const val MIN_VALID_HEART_RATE = 25f//心率最小范围值
    const val MAX_VALID_HEART_RATE = 200f//心率最大范围值
    const val INVALID_VALUE = -1f
}

object DeviceFirmType {//设备厂商类型
    const val YQ_FIRM = "BS Ring 1"
    const val HDU_FIRM = "BS Ring 2"
}

object ConnectState {//0已断开1连接中2已连接
    const val STATE_DISCONNECTED = 0 // 未连接
    const val STATE_CONNECTING = 1 // 连接中
    const val STATE_CONNECTED = 2 // 已连接
}

    enum class CommonCusHealthType(var value: Int) {
    HEARTRATE(1),    // 心率
    BLOODOXYGEN(2),       // 血氧
    HRV(3),       // 心率变异性
    CALORIE(4),       // 卡路里
    BODYTEMP(6),       // 体温
    SLEEP(7),       // 睡眠
    SPORTS(8),       // 运动
    STRESS(3),       // 压力
    STAND(4),       // 站立
    BREATH(6),       // 呼吸率
}
enum class CycleType {
    DAY, WEEK, MONTH
}

// 服务类型枚举
enum class MonitorServiceType {
    SPORT,      // 运动监控
    SLEEP,      // 睡眠监控
    HEALTH,     // 健康监控
}

//睡眠质量类型
enum class SleepModeType(var value: Int) {// 睡眠质量 0,清醒(离床) 1:快速眼动 2:浅睡 3:深睡 4:卧床 5:未佩戴 101:小睡（自用） -999：未知（自用）
    WAKE(0),    // 苏醒
    REM(1),       // 快速眼动
    LIGHT(2),       // 浅睡睡眠
    DEEP(3),       // 深度睡眠
    NOT_WEARING(5),       // 未佩戴
}


//后台同步数据对标数据类型: hr 心率/bp 血压/spo血氧/temp体温/steps步数/exercise运动/sleep睡眠/
enum class ServerHealthDataModelType(var value: String) {
    HEARTRATE("hr"),    // 心率
    HRV("hrv"),    // 心率变异性
    BLOODPRESSURE("bp"),       // 血压
    BLOODOXYGEN("spo"),       // 血氧
    BODYTEMP("temp"),       // 体温
    CALORIE("calorie"),    // 卡路里
    STEPS("steps"),       // 步数
    EXERCISE("exercise"),       // 运动
    SLEEP("sleep"),       // 睡眠
    STRESS("stress"),       // 压力
    STAND("stand"),       // 站立
    BREATH("breath"),       // 呼吸率
    ACLEVEL("acLevel"),       // 活动强度
}


enum class HeartRateFrequencyYQ(var value: Int) {// 研强血氧频率滚轮选项
    WAKE(30),
    MEDIUM(20),
    HIGH(10),
}

enum class HeartRateFrequencyHDu(var value: Int) {// 华嘟血氧频率滚轮选项
    WAKE(60),
    MEDIUM(30),
    HIGH(15),
}


object AllCardTypeConfig {
    const val TYPE_TOP_EMPTY = 0
    const val TYPE_CARD_SLEEP = 1//睡眠
    const val TYPE_CARD_SLEEP_STATE_VALUE = 101//睡眠状态
    const val TYPE_CARD_SLEEP_SUB_SCORING = 102//睡眠主观评分
    const val TYPE_CARD_SLEEP_TOTAL_DURATION = 103//睡眠总时长
    const val TYPE_CARD_SLEEP_TOTAL_PERIOD = 104//睡眠时段
    const val TYPE_CARD_SLEEP_NAP_RECORD_PERIOD = 105//睡眠小睡
    const val TYPE_CARD_SLEEP_SUMMARY_PERIOD = 106//睡眠总结
    const val TYPE_CARD_HD_SLEEP_TOTAL_SCORE = 150//睡眠总分
    const val TYPE_CARD_HD_SLEEP_SUB_SCORING = 151//历史睡眠主观评分
    const val TYPE_CARD_HD_SLEEP_TOTAL_SLEEP_DURATION = 152//历史睡眠总时长
    const val TYPE_CARD_HD_SLEEP_WAKEFULNESS_DURATION = 153//历史睡眠清醒时长
    const val TYPE_CARD_HD_SLEEP_TOTAL_BED_REST_DURATION = 154//历史睡眠总卧床时长
    const val TYPE_CARD_HD_SLEEP_RAPID_EYE_MOVEMENT_DURATION = 155//历史睡眠快速眼动时长
    const val TYPE_CARD_HD_SLEEP_LIGHT_SLEEP_DURATION = 156//历史睡眠浅睡时长
    const val TYPE_CARD_HD_SLEEP_DEEP_SLEEP_DURATION = 157//历史睡眠深睡时长
    const val TYPE_CARD_HD_SLEEP_HR = 158//历史睡眠心率
    const val TYPE_CARD_HD_SLEEP_BOXY = 159//历史睡眠血氧饱和度
    const val TYPE_CARD_HD_SLEEP_NAP_SLEEP_DURATION = 160//历史睡眠小睡时长
    const val TYPE_CARD_HD_SLEEP_SKIN_TEMPERATURE_DURATION = 161//历史睡眠皮肤温度
    const val TYPE_CARD_HD_SLEEP_BREATHING_RATE = 162//历史睡眠呼吸率
    const val TYPE_CARD_ACTIVITY = 2//活动
    const val TYPE_CARD_ACTIVITY_STATE_VALUE = 201//活动状态
    const val TYPE_CARD_ACTIVITY_STEP_NUM = 202//活动步数
    const val TYPE_CARD_ACTIVITY_CALORIE = 203//活动卡路里
    const val TYPE_CARD_ACTIVITY_DAY_CALORIE = 204//活动全天卡路里
    const val TYPE_CARD_ACTIVITY_STANDING_DURATION = 205//活动站立时长
    const val TYPE_CARD_ACTIVITY_DAY_STRENGTH = 206//活动全天强度
    const val TYPE_CARD_ACTIVITY_DAY_RATIO = 207//活动比例
    const val TYPE_CARD_ACTIVITY_RECORD = 208//活动记录
    const val TYPE_CARD_ACTIVITY_SUMMARY = 209//活动总结
    const val TYPE_CARD_HD_ACTIVITY_TOTAL_SCORE = 300//活动总分
    const val TYPE_CARD_HD_ACTIVITY_INTENSITY_DURATION = 301//中高强度时长
    const val TYPE_CARD_HD_ACTIVITY_CONSUME = 302//活动消耗
    const val TYPE_CARD_HD_ACTIVITY_STANDING_DURATION = 303//活动站立小时数
    const val TYPE_CARD_HD_ACTIVITY_PORTS_RECORD = 304//历史运动记录
    const val TYPE_CARD_PRESSURE = 304//压力
    const val TYPE_CARD_PRESSURE_STATE_VALUE = 301//压力状态
    const val TYPE_CARD_PRESSURE_DISTRIBUTION = 302//压力分布
    const val TYPE_CARD_PRESSURE_RATIO = 303//压力比例
    const val TYPE_CARD_PRESSURE_SLEEP = 304//睡眠压力
    const val TYPE_CARD_PRESSURE_SUMMARY = 305//压力总结
    const val TYPE_CARD_HD_PRESSURE_THROUGHOUT_DAY = 306//全天压力
    const val TYPE_CARD_HD_PRESSURE_RELIEF_DURATION = 307//压力放松时长
    const val TYPE_CARD_SIGNS = 4//体征
    const val TYPE_CARD_SIGNS_STATE_VALUE = 401//体征
    const val TYPE_CARD_SIGNS_HR = 402//体征心率
    const val TYPE_CARD_SIGNS_OXY = 403//体征血氧饱和度
    const val TYPE_CARD_SIGNS_HRV = 404//体征心率变异性
    const val TYPE_CARD_SIGNS_TEMP = 405//体征体温
    const val TYPE_CARD_SIGNS_RES_RATE = 406//呼吸率
    const val TYPE_CARD_HD_SIGNS_HR = 407//历史体征心率
    const val TYPE_CARD_EXERCISE = 5//运动
    const val TYPE_CARD_PERIOD = 6//经期

    const val TYPE_CARD_SF_ANNULUS_LIST = 1//评分因素-圆环列表
    const val TYPE_CARD_SF_HR = 2//评分因素-心率-心率变异性-皮肤温度
    const val TYPE_CARD_SF_OXY = 3//评分因素-血氧-呼吸率
}

object LightingEffectConfig {
    const val TYPE_LIGHTING_TIMING = 1 //定时亮灯
    const val TYPE_LIGHTING_GESTURE = 2 //手势亮灯
    const val TYPE_LIGHTING_SPORTS = 3 //运动亮灯
}

object LightingEffectDefValue {
    const val TYPE_LIGHTING_EF_DEF_MODE = 2 //默认模式
    const val TYPE_LIGHTING_EF_DEF_DURATION = 3 //默认时长
    const val TYPE_LIGHTING_EF_DEF_TIME_INT = 30 //默认间隔
}

object LightCustomizeColorConfig {
    const val TYPE_CUS_COLOR_CYAN = 1 //青色
    const val TYPE_CUS_COLOR_BLUE = 2 //蓝色
    const val TYPE_CUS_COLOR_PURPLE = 3 //紫色
    const val TYPE_CUS_COLOR_RED = 4 //红色
    const val TYPE_CUS_COLOR_ORANGE = 5 //橙色
    const val TYPE_CUS_COLOR_YELLOW = 6 //黄色
    const val TYPE_CUS_COLOR_GREEN = 7 //绿色
}